package com.zjw.core.reflect;

import java.lang.reflect.Field;
import java.lang.reflect.Modifier;

/**
 * 反射操作获取属性
 * */
public class ReflectpropertyExample {

    public static void main(String[] args) throws ClassNotFoundException {
    //    Class sonClass = Class.forName("com.zjw.core.reflect.Son");
        Class sonClass = Son.class;

        //获取所有本类声明的对象属性（不问访问权限）
        Field[] fieldArr = sonClass.getDeclaredFields();

        //获取所有声明为public的对象属性(包括父类)
       // Field[] fieldArr = sonClass.getFields();


        for(Field field:fieldArr){
            int modifiers = field.getModifiers();
            System.out.print(Modifier.toString(modifiers) + " ");

            System.out.println(field.getType().getName()+"."+field.getName());


        }
    }
}
